The invention relates to the setting of visualization parameter boundaries, such as color and opacity boundaries, for displaying images, in particular two-dimensional (2D) projections from three-dimensional (3D) data sets.
When displaying an image, such as in medical imaging applications, it is known to associate particular signal values with particular colors and opacities (known as visualization parameters) to assist visualization. This mapping is done when using data from a 3D data set (voxel data set) to compute a 2D data set (pixel data set) representing a 2D projection of the voxel data set for display on a computer screen or other conventional 2D display apparatus. This process is known as rendering.
The 2D data set is more amenable to user interpretation if different colors and opacities are allocated to different signal values in the 3D data set. The details of the mapping of signal values to colors and opacities are stored in a look-up table which is often referred to as the RGBA color table (R, G, B and A referring to red, green, blue and alpha (for opacity) respectively). The color table can be defined such that an entire color and opacity range is uniformly distributed between the minimum and maximum signal values in the voxel data set, as in a gray scale. Alternatively, the color table can be defined by attributing different discrete colors and opacities to different signal value ranges. In more sophisticated approaches, different sub-ranges are ascribed different colors (e.g. red) and the shade of the color is smoothly varied across each sub-range (e.g. crimson to scarlet).
When displaying data such as in medical imaging, the signal values comprising the data set do not usually correspond to what would normally be regarded as visual properties, such as color or intensity, but instead correspond to detected signal values from the measuring system used, such as computer-assisted tomography (CT) scanners, magnetic resonance (MR) scanners, ultrasound scanners and positron-emission-tomography (PET) systems. As an example, signal values from CT scanning will represent tissue opacity, i.e. X-ray attenuation. In order to improve the ease of interpretation of such images it is known to map different colors and opacities to different ranges of display value such that particular features, e.g. bone (which will generally have a relatively high opacity) can be more clearly distinguished from soft tissue (which will generally have a relatively low opacity).
When displaying a 2D projection of a 3D data set, in addition to attributing distinct ranges of color to voxels having particular signal value ranges, voxels within the 3D data set may also be selected for removal from the projected 2D image to reveal other more interesting features. The choice of which voxels are to be removed, or sculpted, from the projected image can also be based on the signal value associated with particular voxels. For example, those voxels having signal values which correspond to soft tissue can be sculpted, i.e. not rendered and therefore xe2x80x9cinvisiblexe2x80x9d, thereby revealing those voxels having signal values corresponding to bone which would otherwise be visually obscured by the soft tissue.
The determination of the most appropriate color table (known in the art as a preset) to apply to an image derived from a particular 3D data set is not trivial and is dependent on many features of the 3D data set. For example, the details of a suitable color table will depend on the subject, what type of data is being represented, whether (and if so, how) the data are calibrated and what particular features of the 3D data set the user might wish to highlight, which will depend on the clinical application. It can therefore be a difficult and laborious task to produce a displayed image that is clinically useful. Furthermore, there is inevitably an element of user-subjectivity in manually defining a color table and this can create difficulties in comparing and interpreting images created by different users, or even supposedly similar images created by a single user. In addition, the user will generally base the choice of color table on a specific 2D projection of the 3D data set rather than on characteristics of the overall 3D data set. A color table chosen for application to one particular projected image will not necessarily be appropriate to another projection of the same 3D data set. A color table which is objectively based on characteristics of the 3D data set rather than a single projection would be preferred.
Accordingly, there is a need in the art for a method of automatically determining appropriate color table presets when displaying medical image data.
According to the invention there is provided a method of setting visualization parameter boundaries for displaying an image from a 3D data set comprising a plurality of voxels, each with an associated signal value, comprising: selecting a volume of interest (VOI) within the 3D data set; generating a histogram of signal values from voxels that are within the VOI; applying a numerical analysis method to the histogram to determine a visualization threshold; and setting at least one of a plurality of boundaries for a visualization parameter according to the visualization threshold.
By restricting the histogram to voxels taken from the VOI, a numerical analysis method can be applied to the histogram which is sensitive to subtle variations in signal value and can reliably identify significant boundaries within the 3D data set for visualization. This allows the visualization parameter boundaries to be set automatically, which is especially useful for 3D data sets for which the signal values have no calibration, as is the case for MR scans.
In some embodiments, a first visualization parameter boundary is set at the visualization threshold. In other embodiments, first and second visualization parameter boundaries are set either side of the visualization threshold. This latter approach can be advantageous if an opacity curve interpolation algorithm is used to calculate an opacity curve between the visualization parameter boundaries.
The numerical analysis method may be applied once to determine only one visualization threshold. Remaining visualization parameter boundaries can then be set manually. Alternatively, the numerical analysis method can be applied iteratively to the histogram to determine a plurality of visualization thresholds and corresponding visualization parameter boundaries.
A significance test may be applied to visualization thresholds and, according to the outcome of the significance test, a significance marker can be ascribed for those ones of the voxels having signal values at or adjacent the visualization threshold, wherein the significance marker indicates significance or insignificance of the visualization threshold.
If two visualization parameter boundaries are set, one each side of the visualization threshold, and the visualization threshold is determined to be significant, then it is convenient to mark as significant only the voxels having signal values at one of the two visualization parameter boundaries. In one example, if a visualization threshold is calculated by the numerical analysis method to lie at a signal value of 54, and visualization parameter boundaries are set at 54xc2x13, i.e. at 51 and 57, then the voxels with signal values of 57 can be marked as significant, and the voxels with signal values of 51 as insignificant.
The significance test can be used to distinguish between visualization parameter boundaries used as enhancements to visualizations of a single tissue type (known as cosmetic boundaries) and those used to identify different tissue-types for the purpose of segmentation (known as significant boundaries). Accordingly, the method may further comprise applying a selection tool to the 3D data set, wherein the selection tool is sensitive to the significance markers. One or more of the selection tools can be designed to ignore voxels that have been marked as insignificant.
The rate of change of a visualization parameter across a visualization parameter boundary may also be modified based on the significance of the visualization parameter boundary. A sharpness parameter can be calculated for determining what rate of change of the visualization parameter to apply at a boundary.
In some embodiments of the invention, the sharpness parameter is the same as the significance marker. The sharpness need not simply be a binary operand, but can adopt a range of integer values, for example from 0 to 100. A sharpness of zero indicates an insignificant boundary, which is referred to as a cosmetic boundary in view of its irrelevance to selection tools. A sharpness of 100 indicates a boundary that has the maximum degree of significance. Intermediate values are used to indicate intermediate significance. In addition to affecting the blending of visualization parameters, the non-zero values may be used for filtering by the selection tools so that boundaries with a significance value of, for example, 5 are significant to some but not all selection tools, a boundary with a significance value of 50 is significant for a greater subset of the selection tools, and a boundary with the maximum significance value of 100 is significant to all selection tools. Alternatively, the non-zero significance values may be used by selection tools to resolve conflicts between different marked boundaries, with boundaries having higher significance values taking precedence. Examples of selection tools are tools for marking objects in a set of connected or unconnected voxels with a visualization parameter (e.g. color or opacity) between two significant visualization parameter boundaries, multiple groups of connected or unconnected voxels above a significant boundary or multiple bands of connected or unconnected voxels below a significant boundary. Marked voxels could then, for example, be sculpted. Sculpting is a well known term of art used to describe voxels that are marked to be transparent from view irrespective of their signal values.
In the best mode of the invention, the numerical analysis method comprises: forming a convex hull of a plurality of segments around the histogram; determining which perpendicular from the segments to the histogram has the greatest length; and taking the signal value at the intersection between the histogram and the perpendicular as the visualization threshold. The sharpness value and the significance test can then be based on the length of the perpendicular determined to have the greatest length. For example, the visualization threshold can be determined to be insignificant if the ratio of the length of the perpendicular to a parameter derived from the signal value range and/or the frequency range of the histogram is below a minimum score.
For some automatic presets, the numerical analysis method is applied to the histogram within a predetermined restricted range of signal values to search for a visualization threshold within that restricted range. This will be particularly useful for 3D data sets with calibrated signal values, such as X-ray data sets calibrated in Hounsfield units. Accordingly, the restricted range may be defined in terms of Hounsfield units.
To provide the user with information about the nature of the automatically calculated thresholds, the histogram and its visualization parameter boundaries can be displayed to the user together with the image created from the 3D data set, thus making the user aware of the visualization parameter boundaries determined by the automatic preset.
The method of the invention is particularly powerful in that it can take account of sculpting performed on the 3D data set prior to automatic preset determination according to the invention. A common example of sculpting will be when a plane is defined through a 3D data set and all voxels to one side of the plane are not rendered, irrespective of their signal values. Another example of sculpting will be the removal of a given set of connected voxels with signal values in a specified range, thus restricting the range of signal values to be visualized prior to determining an automatic preset. Sculpting can be taken account of by restricting the histogram to unsculpted voxels in the VOI.
It has been recognized that voxels with the highest and lowest signal values often constitute bad data which can skew the results of the numerical analysis of the histogram. Accordingly, it is preferred that voxels with the highest and/or the lowest signal values are excluded from the numerical analysis method. For example, the voxels with the lowest and highest 0.1% of the signal values can be excluded. Other proportions could also be envisaged.
In some implementations the method may operate interactively. In such cases, if a user re-defines the VOI, the method of setting visualization parameter boundaries is automatically reapplied to continuously provide the most appropriate visualization parameter boundaries.
The invention further provides a computer program product bearing computer readable instructions for performing the method of the invention.
The invention also provides a computer apparatus loaded with computer readable instructions for performing the method of the invention.